package practise

import (
	"bufio"
	"fmt" // 导入内置 fmt 包
	"os"
)

func main_stdin() {
	reader := bufio.NewReader(os.Stdin)
	line, isPrefix, err := reader.ReadLine()
	/*
		line: 从stdin中读取一行数据（字符切片）
		reader默认一次能读4096个字节
			1. 一次性读完，isPrefix=false
			2. 数据大于4096字节，未读完时，isPrefix=true；直到读完时，isPrefix=false
	*/
	if err != nil {
		fmt.Println(isPrefix)
		fmt.Println(err)
	}
	data := string(line)
	fmt.Println(data)
}

func main_scan() {
	var (
		name string
		age  int
	)
	fmt.Print("请输入用户信息：")
	count, err := fmt.Scanf("我的名字叫%s ，今年%d岁", &name, &age)
	fmt.Println("=================")
	if err == nil {
		fmt.Printf("count is %d\n", count)
		fmt.Printf("name is %s\n", name)
		fmt.Printf("age is %d\n", age)
	} else {
		fmt.Printf("输入了‘%d’个值\n", count)
		fmt.Printf("错误是：%s\n", err)
	}
}

func main_print() { // main 函数是执行程序的入口
	// fmt.Println("hello World")   // 在终端打印 hello World
	name := "smewl"
	nickname := name
	fmt.Println(name, &name)
	fmt.Println(nickname, &nickname)
}
